
//Todo：切换(修改)名字
//Todo：必须写在报名的前面，否则报错，不生效
@file:JvmName("KJTest")


package kotlin05.src.main.java.com.example.kotlin05.s04


/**
 * 10.2kotlin 与 java 互操作性与可空性
 *
 * java 中所有对象都可能为null，当一个kotlin函数返回string类型值
 * 不能就认为它的返回值就能符合kotlin关于空值的规定。这是因为平台之间的原因
 * 不能保证平台之间定义是相同的。
 *
 */



fun main() {

    val gethello = JavaUse1()
    println(gethello.sayHello())

    //类型是 String! : 平台类型
    val sayNull = gethello.sayNull()

    //平台互调可以空安全操作符
    sayNull?.toString()


    //类型映射
//    val hitPoint = gethello.hitPoint
    println(gethello.hitPoint)

//    println(gethello.hitPoint.javaClass)

    //赋值，不用直接调用set方法
    gethello.hitPoint = 8888



}

fun makeFun() = "hello, have fun..."
